<?php
class UsersController extends AppController
{
    var $name = "Users";
    var $uses=array('User','Role');
    //var $helpers = array('Html', 'Form')d;
    
    function index()
    {
       
        
    }
    
    function beforeFilter()//esta funcion debe ser colocada en cada conrtolador para saber si se logeo o no
    {
        $this->__validateLoginStatus();

        
    }
    
    function aprobacionLogin(){//aqui redirigo a otra palntilla para trabajar con el css generico de cakephp
        $this->layout = 'default4';
        $this->set('nombreUsuario',$this->Session->read('User.usuario'),'login_log');
    }


    function login()
    {
        if(empty($this->data) == false)
        {
            //$this->layout = 'default4';
            $this->User->recursive=1;
            if(($user = $this->User->validateLogin($this->data['User'])) == true)
            {
                $this->Session->write('User', $user);
                //$this->Session->setFlash('Bienvenido usuario: '.$this->Session->read('User.usuario'));//aqui con $this->Session->read() muestro el usuario conectado
                Configure::read('Role');
                $this->log('Entro el usuario: '.$this->Session->read('User.usuario'),'login_log');//aqui grabo la entreda del usuario del sistema
                $usuario=$this->Session->read('User.0.usuario');
                $rol_sistema=$this->Session->read('User.1.rol_sistema');
                $sigla=$this->Session->read('User.1.sigla');
                $sigla=md5($sigla);
                //debug($rol_sistema);
                //debug($usuario);
                //$this->redirect('aprobacionLogin');//redirige hacia la accion aprobacionLogin para aplicar otro layout
                $this->redirect(array('controller' => 'inicios', 'action' => 'index/'.$usuario.'/'.$rol_sistema.'/'.$sigla));
                exit();
                
            }
            else
            {
                $this->Session->setFlash('<center>Disculpe!, <blink><font color="red"><b>Usted no está autorizado en el sistema.</b></font></blink></center>');
                $this->redirect('login');
                exit();
            }
        }
    }
    
    function logout()
    {
        $this->log('Se Retiro el usuario: '.$this->Session->read('User.usuario'),'login_log');//aqui grabo el retiro del usuario del sistema
        $this->Session->destroy('user');
        $this->Session->setFlash('<center>Usted ha salido del Sistema Correctamente<blink>!</blink></center>.');
        $this->redirect('login');
    }
        
    function __validateLoginStatus()
    {
        if($this->action != 'login' && $this->action != 'logout')
        {
            if($this->Session->check('User') == false)
            {
                $this->Session->setFlash('<center><blink>Se Requiere estar Logeado!</blink></center>.');
                $this->redirect('login');
                
            }
        }
    }
    
} 
?>